
var wordsInfo = {
    0: { name: "Слово 1", nameEn: "Word 1", x: 0, y: 300 },
	1: { name: "Слово 2", nameEn: "Word 2", x: 880, y: 300 },
	2: { name: "Слово 3", nameEn: "Word 3", x: 0, y: 450 },
	3: { name: "Слово 4", nameEn: "Word 4", x: 880, y: 450 },
	4: { name: "Слово 5", nameEn: "Word 5", x: 0, y: 600 },
	5: { name: "Слово 6", nameEn: "Word 6", x: 880, y: 600 },
	6: { name: "Слово 7", nameEn: "Word 7", x: 0, y: 750 },
	7: { name: "Слово 8", nameEn: "Word 8", x: 880, y: 750 }
}

var dictionaryRu = ['человек','время','дело','жизнь','день','рука','раз','работа','слово','место','лицо','друг','глаз','вопрос','дом','сторона',
	'страна','мир','случай','голова','ребенок','сила','конец','вид','система','часть','город','отношение','женщина','деньги','земля',
	'машина','вода','отец','проблема','час','право','нога','решение','дверь','образ','история','власть','закон','война','бог','голос',
	'тысяча','книга','возможность','результат','ночь','стол','имя','область','статья','число','компания','народ','жена','группа','развитие',
	'процесс','суд','условие','средство','начало','свет','путь','душа','уровень','форма','связь','минута','улица','вечер','качество','мысль',
	'дорога','мать','действие','месяц','государство','язык','любовь','взгляд','мама','век','школа','цель','общество','деятельность','организация',
	'президент','комната','порядок','момент','театр','письмо','утро','помощь','ситуация','роль','рубль','смысл','состояние','квартира','орган',
	'внимание','тело','труд','сын','мера','смерть','рынок','программа','задача','предприятие','окно','разговор','правительство','семья','производство',
	'информация','положение','центр','ответ','муж','автор','стена','интерес','федерация','правило','управление','мужчина','идея','партия','совет',
	'счет','сердце','движение','вещь','материал','неделя','чувство','глава','наука','ряд','газета','причина','плечо','цена','план','речь','точка',
	'основа','товарищ','культура','данные','мнение','документ'];
var dictionaryEn = ['man','time','business','life','day','hand','time','work','the word','location','person','friend','eye','question','house','party','country','peace','case','head','child','force','end','view','system','city','relationship','woman','money','land','car','water','father','the problem','right','foot','decision','the door','image','history','power','law','war','God','the voice','a thousand','the book','opportunity','result','the night','table','name','field','article','integer','the company','people','wife','group','development','process','court','condition','vehicle','start','light','path','the soul','level','form','link','minute','street','evening','quality','thought','road','mother','action','month','state','language','love','view','mother','age','school','aim','society','activity','entity','President','room','order','time','theatre','letter','morning','help','situation','role','meaning','status','apartment','body','warning','body','work','son','measure','death','market','programme','task','enterprise','window','conversation','government','family','production','information','position','center','answer','husband','author','wall','interest','Federation','rule','management','man','idea','party','Council','account','heart','movement','thing','material','week','feeling','head','science','some','newspaper','reason','shoulder','price','plan','speech','point','base','comrade','Kultura','data','view','document'];	
var dictionary = dictionaryRu;
var curDict = -1;

var pWords = [];

function getWordFromDict(){
	curDict++;
	if(curDict >= dictionary.length || curDict == 0) {
		curDict = 0;
		shuffle( dictionary );
	}
	return dictionary[curDict];
}

function openEditWordsPage(back){
	delete words;
	words = [];

	if(!back){
		delete pWords;
		pWords = [];
		for(var i = 0; i < teams.length*2; i++){
			pWords[i] = [];
			for(var j = 0; j < wordsCount; j++){
				pWords[i][j] = isEn() ? wordsInfo[j].nameEn : wordsInfo[j].name;
			}
		}
	

		curPlayer = -1;
		curDict = -1
		curTeam = 0;
		
		
		$("#words").empty();
		for (var key in wordsInfo) {
			if(key >= wordsCount) break;
			var val = wordsInfo[key];		
			var name = isEn() ? val.nameEn : val.name;
			$("#words").append('<input style="position: absolute; -webkit-transform: scale(0.4) translate('+(val.x*scale)+'px, '+(val.y*scale)+'px);"'+
				' type="text" class="enter_word" value="'+name+'" tag="'+key+'" readonly/> ');	
		}
		var word = $('.enter_word[tag = "0"]');
		word.addClass("active");
		word.removeAttr("readonly");
		word.css({'-webkit-transform': 'scale(1) translate(0px, 0px)'});
		
		nextPlayerEnterWords();
	} else {
		prevPlayer();
	}
	openStarsPage("enter_words_page");
	//$.mobile.changePage( $("#enter_words_page") );
}

function nextPlayerEnterWords(){
	curPlayer++;
	if(curPlayer > 1) {
		curTeam++;
		curPlayer = 0;
	}	
	
	if(curPlayer > 0 || curTeam > 0){
		var indexP = curTeam*2 + curPlayer-1;
		$(".enter_word").each(function(){
			pWords[indexP][$(this).attr("tag")] = $(this).val();
			//words.push($(this).val());
		});
	}	
	
	if(teams.length <= curTeam){
		for(var i = 0; i < teams.length*2; i++){
			for(var j = 0; j < wordsCount; j++){
				words.push(pWords[i][j]);
			}
		}
		openPlayersPage();
		return;
	}
	changePlayer();
}

function prevPlayer(){
	curPlayer--;
	if(curPlayer < 0) {
		curTeam--;
		curPlayer = 1;
	}	
	
	var indexP = curTeam*2 + curPlayer+1;
	if(indexP >= 0 && indexP < teams.length*2){
		$(".enter_word").each(function(){
			pWords[indexP][$(this).attr("tag")] = $(this).val();
			//words.push($(this).val());
		});
	}
	
	if(curTeam < 0){
		openEnterPlayersPage();
		return;
	}
	changePlayer();
}

function changePlayer(){
	$("#player_name").text(teams[curTeam].players[curPlayer]);
	
	for(var i = 0; i < wordsCount; i++){
		var val = wordsInfo[i];
		var input = $('.enter_word[tag = "'+i+'"]');
		input.css({'-webkit-transform': 'scale(1) translate(0px, 0px)'});		
	}
	setTimeout(function(){
		var indexP = curTeam*2 + curPlayer;		
		for(var i = 0; i < wordsCount; i++){
			var val = wordsInfo[i];
			var input = $('.enter_word[tag = "'+i+'"]');
			
			input.val(pWords[indexP][i]);
			//input.val(val.name);
			if(i != 0){ 
				input.css({'-webkit-transform': 'scale(0.4) translate('+(val.x*scale)+'px, '+(val.y*scale)+'px)'});	
			} else {
				input.addClass("active");
				input.removeAttr("readonly");			
			}
		}	
	}, 400);
}

function activeWord(word){
	var w = wordsInfo[word.attr("tag")];
	clickclear(word, isEn() ? w.nameEn : w.name);
	if(!word.hasClass("active")){
		playSound(writingSound);
		$(".enter_word.active").each(function(){
			var w = wordsInfo[$(this).attr("tag")];
			$(this).attr("readonly", "readonly");
			$(this).removeClass("active");
			$(this).css({'-webkit-transform': 'scale(0.4) translate('+(w.x*scale)+'px, '+(w.y*scale)+'px)'});
		});
	
		word.addClass("active");
		word.removeAttr("readonly");
		word.css({'-webkit-transform': 'scale(1) translate(0px, 0px)'});
	}
}

function clickclear(thisfield, defaulttext) {
	if (thisfield.val() == defaulttext)
		thisfield.val("");
}

function clickrecall(thisfield, defaulttext) {
	if (thisfield.val() == "")
		thisfield.val(defaulttext);
}


$(document).ready(function() {
	$(".enter_word").live("click", function(){
		activeWord($(this));
	});
	
	$(".enter_word").live("blur", function(){
		var w = wordsInfo[$(this).attr("tag")];
		clickrecall($(this), isEn() ? w.nameEn : w.name);
	});
	
	$("#words_btn_back").click(function(){
		prevPlayer();
		//openEnterPlayersPage();
	});	
	
	$("#words_btn_next").click(function(){
		nextPlayerEnterWords();
	});	

	$("#words_btn_shuffle").click(function(){
		for(var i = 0; i < wordsCount; i++){
			$('.enter_word[tag = "'+i+'"]').val(getWordFromDict());
		}	
	});		
	
});
